home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / PLUS4 / plus4disk2.d64 / ch7.02 seq < prev    next >
Text File  |  2009-01-03  |  11KB  |  161 lines

  1. Ç*NB"1:CH7.02  SEQ"
  2. Ç*SP0:LM8:RM62:PP66:PG59
  3. Ç*VP3:HL8:HR72:HD0:├16/+4: ╙┼╤╒┼╬╘╔┴╠ ╞╔╠┼             ,,╙ECTION XX
  4. Ç*HS2:------------------------------------,,----------
  5. Ç*FT0:-----------------------,,----------
  6. Ç*FS3:(C) 1984 ┼LIZABETH ─EAL,,         Ç#
  7. Ç*LN2
  8. ╙ECTION
  9. Ç*LN2:CN1;╙┼╤╒┼╬╘╔┴╠ ╞╔╠┼╙       Ç*LN2:CN0
  10.      ╘APE AND DISK ARE NORMALLY USED FOR FILING INFORMATION. ╔N THIS SECTION WE LOOK AT SIMPLE TAPE AND DISK SEQUENTIAL FILES. "╙EQUENTIAL" MEANS JUST THAT; INFORMATION ON FILE IS WRITTEN AND READ BACK IN THE SAME ORDER. ╘HERE IS NO HOPPING. ╘O READ BACK THE TENTH ITEM IN A SEQUENTIAL FILE, YOU HAVE TO GO THROUGH THE PRECEEDING NINE, JUST AS IS THE CASE WITH, FOR INSTANCE, AUDIO TAPE. ╙INCE THE TAPE AND DISK FILING METHODS ARE ALMOST IDENTICAL, BOTH ARE DESCRIBED HERE. ╫HERE THEY DIVERGE, SO WILL WE USING SUBTITLES:
  11.  
  12.      ╘┴╨┼: ╨UT ANY UNIMPORTANT OR BLANK TAPE IN THE RECORDER, CLOSE THE DOOR, AND REWIND THE TAPE. ┘OU DO NOT HAVE TO ADVANCE PAST THE LEADER, THE COMPUTER DOES IT FOR YOU.
  13.  
  14.      ─╔╙╦: ╨UT ANY UNIMPORTANT DISK IN THE DRIVE, CLOSE THE DOOR AND SKIP TO THE "╙╘┴╥╘╔╬╟ ┴ ╘╔╬┘ ╞╔╠┼" HEADING. ╔F YOU HAVE A BRAND NEW DISK, STRAIGHT FROM A BOX, OR ANY OLD DISK THAT YOU CAN ERASE, LET'S FORMAT IT NOW:  
  15.  
  16. ╚┼┴─┼╥"╨╥┴├╘╔├┼ ─╔╙╦",╔╨5,─0
  17.  
  18.      ╔T DOESN'T MATTER WHAT NAME YOU GIVE THE DISK, ╨╥┴├╘╔├┼ ─╔╙╦ IS AS GOOD A NAME AS ANY. ╘HE NAME HAS TO FIT IN SIXTEEN LETTERS (NO COMMAS, COLONS OR ASTERISKS, PLEASE). ╘HE TWO-LETTER ╔─ AT THE END (╨5 IN OUR CASE) IS IMPORTANT: USE A UNIQUE COMBINATION OF LETTERS FOLLOWING THE LETTER ╔, THEN WRITE DRIVE NUMBER, NORMALLY ZERO, FOLLOWING THE LETTER ─. ╔F YOU HAPPEN TO BE USING DEVICE NUMBER OTHER THAN 8, TACK ON ANOTHER COMMA, AND THE WORDS "╧╬ ╒9" AT THE END. ╬O QUOTES, OF COURSE, AND 9 CAN BE ANOTHER NUMBER.
  19.  
  20.      ┴NY TROUBLE? ╔S THE DISK LIGHT FLASHING?  ╔F YES, LET'S SEE WHAT THE DISK IS SAYING, AS THE DISK ONLY TALKS WHEN SPOKEN TO:
  21.  
  22. ╨╥╔╬╘ ─╙$
  23.  
  24.      ╔F YOU HAD TROUBLES, GO BACK TO THE BEGINNING, OTHERWISE, LET'S GO ON.
  25.  
  26. Ç*FP3
  27. Ç*CN1;--- ╙╘┴╥╘╔╬╟ ┴ ╘╔╬┘ ╞╔╠┼ ---Ç*CN0
  28.  
  29.      ╔N DIRECT MODE, TYPE AND PUSH ╥┼╘╒╥╬ AFTER EACH LINE:
  30.  
  31. Ç*FP10
  32. ╘┴╨┼: ╧╨┼╬2,1,1,  "╞╔╥╙╘ ╞╔╠┼"
  33. ─╔╙╦: ╧╨┼╬2,8,3,"0:╞╔╥╙╘ ╞╔╠┼,╙,╫"
  34.           ! ! !  ! !          !
  35.           ! ! !  ! !           ---DISK ONLY,
  36.           ! ! !  ! !              ╙,╫=SEQUENTIAL,WRITE
  37.           ! ! !  !  -BOTH:FILE NAME UP TO 15 LETTERS
  38.           ! ! !   ---DISK:DRIVE#
  39.           ! !  ------DISK:CHANNEL# OR SECONDARY ADDRESS
  40.           ! !        TAPE:1=WRITE,0=READ
  41.           !  --------BOTH:DEVICE #
  42.            ----------BOTH:FILE # TO WHICH WE ╨╥╔╬╘
  43.                           KEEP IT UNDER 128.
  44.  
  45. Ç*FP4
  46. ┬╧╘╚: ╥$=├╚╥$(13)   - THAT'S A ╥┼╘╒╥╬ CHARACTER
  47.       ╨╥╔╬╘#2,"═╧╬─┴┘";╥$;
  48.       ╨╥╔╬╘#2,"╘╒┼╙─┴┘";╥$;"╫┼─╬┼╙─┴┘";╥$;
  49.       ╨╥╔╬╘#2,"╘╚╒╥╙─┴┘";╥$;
  50.  
  51.      ╫E'RE PRINTING DAYS OF THE WEEK AND FORCING CARRIAGE RETURNS BETWEEN THE ITEMS, JUST AS YOU PRINT ON THE SCREEN. ╔F YOU HAVE A VERY NEW DISK MODEL, YOU COULD SKIP ALL THIS ╥$ BUSINESS, BUT OTHER SYSTEMS MIGHT GIVE YOU TROUBLE -- MIGHT AS WELL USE IT AND GET USED TO IT.
  52.  
  53.      ╔F YOU DON'T HEAR OR SEE ANY TAPE OR DISK ACTIVITY, THAT'S ╧╦. ╘HE SYSTEMS ARE COLLECTING INFORMATION. ┴S SOON AS THEY COLLECT ENOUGH OR WE SAY THAT WE'RE DONE, THEY'LL SEND IT THROUGH. ╙INCE WE ARE READY LET'S MAKE SURE ALL THIS ENDS UP WHERE WE INTENDED (DON'T EVER, EVER, EVER FORGET THIS):
  54.  
  55. ┬╧╘╚: ├╠╧╙┼ 2
  56.  
  57.      ╔F YOU HEARD SOME TAPE OR DISK NOISE NOW, THAT'S THE FINAL DELIVERY.
  58.  
  59. Ç*CN1;--- ╥┼┴─╔╬╟ ┬┴├╦ ╘╚┼ ─┴┘╙ ╧╞ ╘╚┼ ╫┼┼╦ ---Ç*CN0
  60.  
  61.      ╘HIS REQUIRES A PROGRAM. ╫E CAN'T ╔╬╨╒╘ OR ╟┼╘ IN DIRECT MODE.
  62.  
  63. 10 ╧╨┼╬ 5,1,0,"╞╔╥╙╘ ╞╔╠┼"           TAPE
  64. 10 ╧╨┼╬ 5,8,3,"╞╔╥╙╘ ╞╔╠┼,╙,╥"       DISK
  65. 20 ╔╬╨╒╘#5,╓$:╨╥╔╬╘ ╓$
  66. 30 ╔╞ ╙╘=0 ╟╧╘╧ 20
  67. 40 ├╠╧╙┼ 5
  68.  
  69.      ╓$ IS THE VARIABLE IN WHICH WE EXPECT TO FIND THE DAYS OF THE WEEK. ╙╘ TELLS US WHEN THE FILE IS FINISHED. ┘OU SHOULD SEE ON THE SCREEN EXACTLY WHAT YOU WROTE TO THE FILE.
  70.  
  71.      ╫E WROTE SINGLE ITEMS (DAYS) TO THE FILE, SEPARATED BY CARRIAGE RETURNS. ╫E GET BACK SINGLE ITEMS INTO VARIABLE ╓$.
  72.  
  73.      ╘HE ",╙,╥" IN THE DISK VERSION MEANS "╙EQUENTIAL, ╥EAD". ┘OU CAN SKIP THIS PART IN YOUR TYPING. ╙EQUENTIAL-╥EAD IS A DEFAULT. ─EFAULT IS A BUZZWORD MEANING, "IF YOU DON'T TELL IT TO THE COMPUTER, IT ASSUMES ╙,╥".
  74.  
  75.      ┴NOTHER NICE TOUCH IS THAT ALL THE VALUES IN THE ╧╨┼╬ STATEMENT CAN BE  VARIABLES. ╘RY THIS:
  76.  
  77. ╞$="╞╔╥╙╘ ╞╔╠┼":╞=5
  78. ─=1 (TAPE)  OR ─=8  (DISK)
  79. ╙┴=0 (TAPE) OR ╙┴=3 (DISK)
  80. ╧╨┼╬ ╞,─,╙┴,╞$ (TAPE) OR ╧╨┼╬ ╞,─,╙┴,╞$+",╙,╥" (DISK)
  81.  
  82. AND PLUG IT ALL IN THE PROGRAM ABOVE. ╔T WILL WORK AND WILL ALLOW YOU EASY CHANGES IF YOU EVER NEED THEM.
  83.  
  84.      ╘HAT'S THE BARE-BONES ESSENTIALS OF FILING. ╫HAT IS MISSSING IS HANDLING POSSIBLE ERRORS THAT MAY WELL OCCUR. ╘HE FOLLOWING PROGRAMS TAKE CARE OF THAT.
  85.  
  86. Ç*CN1;--- ╫╥╔╘╔╬╟ ╞╔╠┼╙ ╔╬ ┴ ╨╥╧╟╥┴═ ---Ç*CN0
  87.  
  88.      ┘OU'RE UNLIKELY TO SIT IN FRONT OF THE MONITOR TYPING ╨╥╔╬╘#2,THIS, ╨╥╔╬╘#2, THAT ... IT GETS BORING. ┴ PROGRAM CAN DO IT FOR US. ╨ICK THE CORRECT FILE-WRITING PROGRAM, BELOW.
  89.  
  90. // PRG: TAPE SEQ.WR //
  91.  
  92. // PRG: DISK SEQ WR //
  93.  
  94.      ╘┴╨┼: YOU CAN REWIND AND WRITE OVER THE OLD FILE, OR KEEP THE TAPE POSITIONED WHERE IT IS AND CONTINUE WRITING. ╫HEN YOU START, AGAIN, MAKE SURE THE BUTTONS ARE UP. ╘HE COMPUTER HAS NO WAY OF TELLING WHICH BUTTONS ARE PUSHED. ╙O LONG AS ANYTHING IS DOWN, THE SILLY MACHINE THINKS IT'S THE CORRECT SET OF BUTTONS!
  95.  
  96. ─╔╙╦: ╘HE PROGRAM WILL TELL YOU IF THERE ARE PROBLEMS BY USING AN ERROR CHECKING ROUTINE IN LINES 190-200.
  97.  
  98.      ╔═╨╧╥╘┴╬╘ ╬╧╘╔├┼, ┬╧╘╚ ╙┘╙╘┼═╙: IF YOU MUFFED UP ON YOUR TYPING A LITTLE BIT AND THE COMPUTER REPORTS AN ERROR, ─╧ ╬╧╘ ╞╔╪ ╘╚┼ ╨╥╧╟╥┴═ ╬╧╫. ╞IRST TYPE ├╠╧╙┼ 1. ╬OW YOU CAN FIX THE PROGRAM. ╘HIS IS NOT THAT IMPORTANT WITH ╘┴╨┼, BUT ─╔╙╦ PEOPLE MUST CLOSE FILES. ╘APE PEOPLE CAN SKIP WHAT FOLLOWS UNTIL THE NEXT HEADING:
  99.  
  100.      ─╔╙╦: ╔F YOU DO NOT CLOSE FILES, THE ─╔╥┼├╘╧╥┘ WILL SHOW AN ASTERISK ON THE RIGHT OF THE NAME. ╘HAT INVITES LOTS OF TROUBLES LATER. ╙O, ├╠╧╙┼ YOUR FILES, DO NOT EVER ALLOW AN ASTERISK FILE TO BE ON THE DISK. ╔F YOU DO LET ONE OR TWO PASS THROUGH, IMMEDIATELY, AS SOON AS YOU SEE ONE, TYPE ├╧╠╠┼├╘ OR ╓┴╠╔─┴╘┼ TO REMOVE UNCLOSED FILES. ╘HEY MUST BE REMOVED TO ASSURE THAT OTHER FILES WILL NOT BE DAMAGED.
  101.  
  102.      ─╧ ╬╧╘ ┼╓┼╥ ╙├╥┴╘├╚ ┴ ╞╔╠┼ ╘╚┴╘ ╚┴╙ ┴╬ ┴╙╘┼╥╔╙╦ ╬┼╪╘ ╘╧ ╔╘╙ ╬┴═┼, ┘╧╒'╥┼ ╩┼╧╨┴╥─╔┌╔╬╟ ┴╠╠ ╧╘╚┼╥ ╔╬╞╧╥═┴╘╔╧╬ ╧╬ ╘╚┼ ─╔╙╦ ╔╞ ┘╧╒ ─╧. ┬┘ ╘╚┼ ╙┴═┼ ╘╧╦┼╬, ─╧ ╬╧╘ '╙┴╓┼ ╫╔╘╚ ╥┼╨╠┴├┼' ╒╬╠┼╙╙ ┘╧╒ ╦╬╧╫ ╘╚┼╥┼ ┴╥┼ ╬╧ ┴╙╘┼╥╔╙╦ ╞╔╠┼╙ ╧╬ ╘╚┼ ╞╠╧╨╨┘. ╫HEEW! ╩UST TRYING TO GET THE IDEA ACROSS.
  103.  
  104. Ç*CN1;--- ╥┼┴─╔╬╟ ┴Çú╞╔╠┼ ┬┴├╦ ---Ç*CN0
  105.  
  106.      ╫E HAVE TO HAVE A PROGRAM. ╫E HAVE TO USE ╔╬╨╒╘ OR ╟┼╘. ╘HEY ONLY WORK IN PROGRAM MODE. ╘YPE IN ONE OF THE TWO PROGRAMS BELOW, JUDGING BY THE TITLE, WHICH TO USE:
  107.  
  108. // PRG: TAPE SEQ.RD //
  109.  
  110. // PRG: DISK SEQ RD //
  111.  
  112.      ╘┴╨┼: REWIND YOUR TAPE. ═AKE SURE THE BUTTONS ARE UP. ╥╒╬ THE PROGRAM. ╔T WILL TELL YOU WHEN TO PRESS ╨╠┴┘.
  113.  
  114.      ─╔╙╦: ╥╒╬ THE PROGRAM. ╔F THE DISK DOOR WAS UP, YOU GOT A MESSAGE FROM THE DISK, RIGHT? ├LOSE IT, AND TRY AGAIN.  ╘HAT IS ONE OF MANY REASONS FOR CHECKING WHAT THE DISK HAS TO SAY TO US.
  115.  
  116. // PIC: SEQ.TP //   // PIC: DSK SEQ //
  117.  
  118.      ╔N THE DISK VERSION, ╠INES 200-210 SHOW AN ALTERNATIVE (BUT UNIVERSAL IN THE ├╧══╧─╧╥┼ MACHINES) WAY OF GETTING ─╙ AND ─╙$, THE DISK MESSAGES. ╔T COULD HAVE BEEN CODED:
  119.      
  120. ╔╞ ─╙=0 ╘╚┼╬ ╥┼╘╒╥╬:┼╠╙┼ ╨╥╔╬╘ ─╙;─╙$
  121.  
  122. Ç*FP4
  123. Ç*CN1;--- ├╧╬╬┼├╘╔╬╟ ╞╔╠┼╙ ---Ç*CN0
  124.  
  125.      ╙EVERAL SEQUENTIAL FILES THAT HAVE BEEN WRITTEN WITH SIMILAR CONTENTS CAN BE CONNECTED INTO ONE LONG FILE. ╘HIS IS DONE BY A DISK COPY COMMAND. ╔F YOU HAVE THREE FILES, NAMED "╞╔╠┼┴" AND "╞╔╠┼┬" AND "╞╔╠┼├" AND WISH TO CONNECT THEM INTO ONE LARGE FILE, THE MAGIC WORDS ARE:
  126.  
  127. Ç*FP3
  128. ╧╨┼╬ 1,8,15
  129. ╨╥╔╬╘#1,"├0:┬╔╟╞╔╠┼┴┬├=0:╞╔╠┼┴,0:╞╔╠┼┬,0:╞╔╠┼├"
  130. ├╠╧╙┼ 1
  131.  
  132. ╔T CAN ALL BE TYPED ON ONE LINE, AND IT CAN BE USED INSIDE A PROGRAM. ╔F YOU HAVE A DUAL DRIVE, THE DESTINATION DRIVE CAN BE DIFFERENT, "1" FOR EXAMPLE, SO THE COMMAND MIGHT BEGIN: ├1=┬╔╟ ETC.
  133.  
  134.      ╙EQUENTIAL FILES CAN GROW. ┘OU CAN ATTACH NEW INFORMATION, IF YOU WISH, TO THE EXISTING FILE, BY ╧╨┼╬╔╬╟ DIFFERENTLY: INSTEAD OF THE "╙,╫" AT THE END, YOU CAN CODE ",┴". ╘HE LETTER ┴ STANDS FOR "APPEND". ╘HE COMPUTER WILL TRANSLATE IT TO ╙EQUENTIAL-╫RITE CONTINUED FILE. ╘HE ┴ COMMAND IS OFTEN MISSING IN THE ├╧══╧─╧╥┼ DISK MANUALS, BUT IT IS THERE AND YOU CAN USE IT WHENEVER YOU WISH.
  135.  
  136. ***  ╨╥╧╩┼├╘╙  ***
  137.  
  138.      ╘HE TAPE PROGRAM WROTE NUMBERS AND LETTERS OUT. ╘HE DISK PROGRAM WROTE ITEMS FROM ─┴╘┴ LINES. ╚OW ABOUT SWAPPING THE CONTENTS NOW? ╘AKE THE OTHER GUY'S INFORMATION AND WRITE IT ON YOUR FILE, CHANGING THE FILE NAME, OF COURSE, SO WE WOULDN'T HAVE CONFUSION. ┬RING THEM BACK ON THE SCREEN WITH THE READER.
  139.  
  140.      ┬UILD A TABLE IN MEMORY (ARRAY) OF SQUARE ROOTS OF VALUES FROM 1 TO 100, AND WRITE THEM OUT. ╒SE THE READER TO CONFIRM THAT EVERYTHING IS ALL RIGHT.
  141.  
  142.      ╨UT TOGETHER A SAMPLE INVENTORY FILE. ┘OU'LL NEED FOUR VARIABLES, PART NUMBER, NAME, QUANTITY, UNIT PRICE. ╥EVIEW HOW WE WROTE DAYS OF THE WEEK. ╔T'S ╧╦ TO ╨╥╔╬╘ SEVERAL ITEMS IN ONE ╨╥╔╬╘ STATEMENT, SO LONG AS YOU FORCE THE CARRIAGE RETURNS CAREFULLY.
  143.  
  144.      ╘IE THE FILING INFORMATION WITH SORTING OR SEARCHING PROGRAMS YOU HAVE SEEN. ╙ET UP A FILE, ATTACH A READING ROUTINE TO THE SORT ROUTINE AND MAKE IT SORT.
  145.  
  146. ***  ╚╔╬╘╙ ┴┬╧╒╘ ╘╥╧╒┬╠┼ ╙╨╧╘╙  ***
  147.  
  148.      ─ON'T ALLOW COMMAS AND COLONS TO BE WRITTEN TO A FILE. ╔╬╨╒╘ WILL NOT BE ABLE TO BRING ANYTHING BACK FROM BEYOND THOSE CHARACTERS (AND IT WON'T EVEN SAY ?┼╪╘╥┴ ╔╟╬╧╥┼─, AS IT NORMALLY DOES WITH ╔╬╨╒╘ FROM THE SCREEN!). ╔F YOU DO, HOWEVER, GET MESSED UP, THIS LITTLE EMERGENCY ROUTINE IS A READER FOR ALL SEQUENTIAL FILES (INCLUDING PROGRAM LISTINGS - MORE ON THAT BELOW):
  149.  
  150. // PRG: TRACE FILE //
  151.  
  152.      ╫ATCH THAT YOU DON'T SKIP THE SEMICOLON IN THE ╨╥╔╬╘ STATEMENT.
  153.  
  154.      ╙OME PEOPLE HAVE THIS CODE MEMORIZED. ╘HEY DON'T LOAD IT, BUT WHEN A FILE ISN'T WORKING RIGHT, THEY JUST TYPE THOSE THREE LINES OF CODE ANYPLACE AND ╥╒╬ THAT SECTION UNTIL THE FILE IS RIGHT. ─ISK'S TALKER, ITS CHANNEL 15 ISN'T EVEN QUERIED. IT'S NOT SO IMPORTANT WHEN YOU'RE READING A FILE, AND ╙╘ TELLS US MUCH THAT WE NEED TO KNOW. ┘OU CAN READ ABOUT THE ╙╘ VARIABLE IN THE MANUAL.
  155.  
  156.      ╘HE ROUTINE IS SLOOOOOW. ┬UT IT GETS EVERY CHARACTER. ╙O A CARRIAGE RETURN PRINTS WHERE ONE WAS ON FILE, AND IF EVERYTHING IS CORRECT, YOU'LL GET ONE ITEM PER SCREEN LINE.  ╔F THINGS ARE MUFFED UP ... WELL, YOU MAY GET A CHANGE IN COLORS, OR SCREEN WILL CLEAR, OR YOU'LL SEE THE EFFECT OF THE DREADED COMMAS (THINGS WILL ╘┴┬ ON THE SCREEN) IN THE WORST CASE. ┬UT IN THE BEST CASE, THE SCREEN POSITIONS OF ITEMS WILL TELL YOU IF YOU'RE WRITING YOUR FILE CORRECTLY. ╚APPY FILING!
  157.  
  158.      ╔F YOU MUST WRITE COMMAS AND COLONS TO A FILE (AND THERE ARE MANY APPLICATIONS WHEN YOU MUST), THERE IS A WAY TO READ IT BACK, BUT IT REQUIRES MACHINE CODE. ╟ET HOLD OF ╩IM ┬UTTERFIELD'S ╙╘╥╔╬╟╘╚╔╬╟ PROGRAM (FROM ╘╨╒╟ OR THE ╘╥┴╬╙┴├╘╧╥, OR HIS ═ACHINE CODE BOOK AND DISK). ╙╘╥╔╬╟╘╚╔╬╟ DOES NOT HAVE THE FAULTS THAT ╔╬╨╒╘ HAS, AND IS EASY TO HOOK UP TO YOUR PROGRAMS.
  159.  
  160.      ┴ MORAL: ─O NOT FILE ANY IMPORTANT INFORMATION UNTIL YOU UNDERSTAND SIMPLE FILING. ═ANY PEOPLE WRITE VOLUMES TO DISK, ONLY TO FIND OUT LATER THAT THEY CAN'T READ IT BACK. ╙TART SMALL, AND STAY WITH TINY PROJECTS UNTIL YOU KNOW EXACTLY WHAT'S HAPPENING. ┘OU HAVE TO HAVE COMPLETE CONTROL OVER THE FILE BEFORE YOU CAN USE IT.
  161.